For data that is intended to be private and restricted, encryption of the data is a high priority. However, encryption typically utilizes appreciable time and resources. For example, bulk encryption efforts of large amounts of data may consume relatively large amounts of time and computing resources. Similarly, but on a smaller scale, encryption of even small amounts of data may be problematic, such as when access to the data is required in real time and even relatively small delays are unacceptable.
Often encryption is provided as a service, such as by an application provider to a customer. In these cases, the provider of the encryption service is charged with maintaining the safety and integrity of the data, while still providing a desired access level to the data. Moreover, in addition to the time and resource constraints referenced above, it is possible that a given encryption scheme may be compromised by hackers or other illicit users. Consequently, for these and other reasons, it is challenging to provide data encryption.